package com.daydayup.easypoi.model.dto;

import cn.afterturn.easypoi.excel.annotation.Excel;
import com.daydayup.easypoi.model.bo.PersonnelBO;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;

import java.io.Serializable;
import java.util.List;

/**
 * 施工单位承载力<br>
 *
 * @author luo_zm
 * @create 2019/10/30 15:39
 */
@Data
@EqualsAndHashCode(callSuper = false)
@ToString
public class BearerConstructionDTO implements Serializable {

    private static final long serialVersionUID = -3915706381934022179L;

    @ApiModelProperty(value = "施工单位id", example = "id", position = 10)
    private Long id;

    @ApiModelProperty(value = "施工单位名称", example = "施工单位", position = 20)
    @Excel(name = "企业")
    private String unitName;

    @ApiModelProperty(value = "变电工程数量", example = "66", position = 30)
    @Excel(name = "变电工程数量")
    private Integer electricProjectAmount;

    @ApiModelProperty(value = "所有变电工程总容量", example = "66", position = 40)
    @Excel(name = "所有变电工程总容量")
    private Double substationCapacity;

    @ApiModelProperty(value = "线路工程数量", example = "66", position = 50)
    @Excel(name = "线路工程数量")
    private Integer lineProjectAmount;

    @ApiModelProperty(value = "线路长度", example = "66", position = 60)
    @Excel(name = "线路长度")
    private Double lineLonger;

    @ApiModelProperty(value = "变电工程可组建项目部数量", example = "66", position = 70)
    @Excel(name = "变电工程可组建项目部数量")
    private Integer eltProjectDep;

    @ApiModelProperty(value = "变电工程可组建项目部可调配数量", example = "66", position = 80)
    @Excel(name = "变电工程可组建项目部可调配数量")
    private Integer eltProjectDepResidue;

    @ApiModelProperty(value = "变电工程可组建班组数量", example = "66", position = 90)
    @Excel(name = "可组建班组数")
    private Integer eltProjectGroup;

    @ApiModelProperty(value = "变电工程可组建班组可调配数量", example = "66", position = 90)
    @Excel(name = "变电工程可组建班组可调配数量")
    private Integer eltProjectGroupResidue;

    @ApiModelProperty(value = "线路工程可组建项目部数量", example = "66", position = 70)
    @Excel(name = "线路工程可组建项目部数量")
    private Integer lineProjectDep;

    @ApiModelProperty(value = "线路工程可组建项目部可调配数量", example = "66", position = 80)
    @Excel(name = "线路工程可组建项目部可调配数量")
    private Integer lineProjectDepResidue;

    @ApiModelProperty(value = "线路工程可组建班组数量", example = "66", position = 90)
    @Excel(name = "线路工程可组建班组数量")
    private Integer lineProjectGroup;

    @ApiModelProperty(value = "线路工程可组建班组可调配数量", example = "66", position = 90)
    @Excel(name = "线路工程可组建班组可调配数量")
    private Integer lineProjectGroupResidue;
    /**
     * 一下字段为施工承载力报告需要字段
     */
    @ApiModelProperty(value = "变电工程需要组建项目部", example = "66", position = 90)
    @Excel(name = "变电工程需要组建项目部")
    private Integer eltProjectUsed;
    @ApiModelProperty(value = "变电工程需要班组使用数量", example = "66", position = 90)
    @Excel(name = "变电工程需要班组使用数量")
    private Integer eltProjectGroupUsed;
    @ApiModelProperty(value = "线路工程需要项目部使用数量", example = "66", position = 90)
    @Excel(name = "线路工程需要项目部使用数量")
    private Integer lineProjectUsed;
    @ApiModelProperty(value = "线路工程需要班组数量", example = "66", position = 90)
    @Excel(name = "线路工程需要班组数量")
    private Integer lineProjectGroupUsed;
    /**
     * 当前施工单位的拥的工程的电压等级
     */
    private List<Integer> voltageList;
    /**
     * 现有项目管理关键人员
     */
    private PersonnelBO personnelBO;
}
